home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Deutsche Edition 1
/
Deutsche Edition 1.iso
/
amok
/
041-050
/
amok44
/
m2ced
/
txt
/
configed.mod
< prev
next >
Wrap
Text File
|
1993-11-04
|
3KB
|
153 lines
(**********************************************************************
:Program. ConfigEd.mod
:Contents. Edit S:M2CED.config
:Author. Steffen Reith
:Address. Hessenstr. 64, D-8700 Würzburg
:Copyright. Shareware
:Language. Modula-2
:Translator. M2Amiga A+L V3.2d
:Imports. ARP,Msg,Config
:History. V1.0 1.June 1990
:Note. Make it better!!
**********************************************************************)
MODULE ConfigEd;
FROM req IMPORT GetString,GetLong,GetLongStruct,GetLongFlags,GetLongFlagSet;
FROM Dos IMPORT Write,Open,Close,newFile,Read,FileHandlePtr,oldFile;
FROM Config IMPORT ConfigFile,WindowDefault,Para,P,MaxWS,MaxCM,ContMsgDefault,
compileDefault,linkDefault,startDefault,loadDefault,
findErrorDefault,cancelDefault,continueDefault;
FROM SYSTEM IMPORT ADR;
FROM Msg IMPORT Request;
VAR Exist,Flag:BOOLEAN; (* TRUE wenn ConfigFile da *)
File:FileHandlePtr;
Work:P;
Dummy:LONGINT;
GL:GetLongStruct;
PROCEDURE ClearString2End(VAR String:ARRAY OF CHAR);
VAR i,j:INTEGER;
BEGIN
i:=0;
WHILE (String[i]#CHAR(0)) AND (i<HIGH(String)) DO INC(i) END;
IF i<HIGH(String) THEN
FOR j:=i+1 TO HIGH(String) DO String[j]:=CHAR(0) END
END
END ClearString2End;
BEGIN
File:=Open(ADR(ConfigFile),oldFile);
Exist:=File#NIL;
Close(File);
IF Exist THEN
Work:=Para;
ELSE
WITH Work DO
Window:=WindowDefault;
ContMsg:=ContMsgDefault;
compileN:=compileDefault;
linkN:=linkDefault;
startN:=startDefault;
loadN:=loadDefault;
findErrorN:=findErrorDefault;
cancelN:=cancelDefault;
continueN:=continueDefault
END
END;
Flag:=GetString(ADR(Work.Window),
ADR('WindowDefinition eingeben'),NIL,35,MaxWS);
ClearString2End(Work.Window);
WITH GL DO
minLimit:=0;
maxLimit:=05FH;
window:=NIL;
versionnumber:=0;
flags:=GetLongFlagSet{}
END;
WITH GL DO
titleBar:=ADR('Compile Key');
defaultval:=Work.compileN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.compileN:=GL.result
END;
WITH GL DO
titleBar:=ADR('Link Key');
defaultval:=Work.linkN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.linkN:=GL.result
END;
WITH GL DO
titleBar:=ADR('Start Key');
defaultval:=Work.startN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.startN:=GL.result
END;
WITH GL DO
titleBar:=ADR('Load Key');
defaultval:=Work.loadN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.loadN:=GL.result
END;
WITH GL DO
titleBar:=ADR('FindError Key');
defaultval:=Work.findErrorN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.findErrorN:=GL.result
END;
WITH GL DO
titleBar:=ADR('Cancel Key');
defaultval:=Work.cancelN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.cancelN:=GL.result
END;
WITH GL DO
titleBar:=ADR('Continue Key');
defaultval:=Work.continueN
END;
Flag:=GetLong(GL);
IF Flag THEN
Work.continueN:=GL.result
END;
Flag:=GetString(ADR(Work.ContMsg),
ADR('Continuemessage eingeben'),NIL,35,MaxCM);
ClearString2End(Work.ContMsg);
File:=Open(ADR(ConfigFile),newFile);
IF File#NIL THEN
Dummy:=Write(File,ADR(Work),SIZE(P));
Close(File)
ELSE
Request('Fataler Fehler kann Configfile nicht schreiben ')
END;
END ConfigEd.